﻿using System.Windows.Forms;
using csvmb.contracts.datacontracts;
using NUnit.Framework;

namespace csvmb.gui.tests
{
    [TestFixture]
    public class Class1
    {
        [Test, Explicit, RequiresSTA]
        public void Display() {
            var gui = new Gui();

            var ds1 = new Datensatz {Spaltenwerte = new[] {"zeile1.1", "zeile1.2", "zeile1.3"}};
            var ds2 = new Datensatz {Spaltenwerte = new[] {"zeile2.1", "zeile2.2", "zeile2.3"}};
            var ausschnitt = new Ausschnitt(new[] {"spalte1", "spalte2", "spalte3"}, new[] {ds1, ds2});

            gui.Zeige_Ausschnitt(ausschnitt);

            gui.Run(new string[0]);
        }

        [Test, Explicit, RequiresSTA]
        public void Spaltenbreite_hängt_von_Spaltenwerten_und_Header_ab() {
            var gui = new Gui();

            var ds1 = new Datensatz {Spaltenwerte = new[] {"Pumuckl", "Meister Eder"}};
            var ausschnitt = new Ausschnitt(new[] {"x", "y"}, new[] {ds1});

            gui.Zeige_Ausschnitt(ausschnitt);

            gui.Run(new string[0]);
        }

        [Test, Explicit, RequiresSTA]
        public void Datei_öffnen_Event() {
            var gui = new Gui();
            gui.Datei_oeffnen += tuple => MessageBox.Show("Dateiname=" + tuple.Item1 + ", Ausschnittgröße=" + tuple.Item2);
            gui.Run(new[] {""});
        }
    }
}